package com.glp.work.flow.response;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @author pengjia
 * @version 2020年6月8日 上午9:09:35
 */
@Data
public class WfOrderResponse implements Serializable {

    private static final long serialVersionUID = -5674421618810109756L;


    /**
     * 流程定义名称
     */
    @ApiModelProperty(value = "平台名称")
    private String platformame;
    /**
     * 工单编号
     */
    @ApiModelProperty(value = "工单编号")
    private String wfId;

    /**
     * 任务ID
     */
    @ApiModelProperty(value = "任务ID")
    private String taskId;

    /**
     * 工单标题
     */
    @ApiModelProperty(value = "工单标题")
    private String orderTitle;

    /**
     * 外部订单编号
     */
    @ApiModelProperty(value = "外部订单编号")
    private String orderId;

    /**
     * 批次
     */
    @ApiModelProperty(value = "批次")
    private String batch;

    /**
     * 流程key
     */
    @ApiModelProperty(value = "流程key")
    private String procDefKey;

    /**
     * 版本号
     */
    @ApiModelProperty(value = "版本号")
    private String version;

    /**
     * 流程名称
     */
    @ApiModelProperty(value = "流程名称")
    private String procDefName;

    /**
     * 流程实例ID
     */
    @ApiModelProperty(value = "流程实例ID")
    private String processId;

    /**
     * 创建用户
     */
    @ApiModelProperty(value = "创建用户")
    private String createUser;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 完成时间
     */
    @ApiModelProperty(value = "完成时间")
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    @ApiModelProperty(value = "总耗时")
    private String totalTime;

    /**
     * 当前节点
     */
    @ApiModelProperty(value = "当前节点")
    private String currentNode;

    /**
     * 当前任务处理人
     */
    @ApiModelProperty(value = "当前任务处理人")
    private String processor;

    /**
     * 当前任务ID
     */
    @ApiModelProperty(value = "当前任务ID")
    private String currentTaskId;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态")
    private String orderStatus;

    /**
     * 表单定义内容
     */
    @ApiModelProperty(value = "表单定义内容")
    private String formContent;
    /**
     * 表单定义名称
     */
    @ApiModelProperty(value = "表单定义内容")
    private String formName;

    /**
     * 表单数据
     */
    @ApiModelProperty(value = "表单数据")
    private String formData;

    @ApiModelProperty(value = "备注")
    private String remarks;

    @ApiModelProperty(value = "表单Code")
    private String formCode;

    /**
     * 记录
     */
    @ApiModelProperty(value = "记录")
    private List<com.glp.work.flow.request.FlowTaskHistoryDTO> commentList;

    @ApiModelProperty(value = "用户任务")
    private List<UserTaskDto> userTaskList;

    @ApiModelProperty(value = "是否发送短信验证码0：关，1：开")
    private String sms;

    @ApiModelProperty(value = "审批页面'禁用'的操作，PASS：通过，FAIL：拒绝，REJECT：驳回")
    private List<String> optionList;

}
